using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class 输入管理器 : 单例_基础管理器<输入管理器>
{
    public 键位配置 配置;

    public 输入管理器()
    {
        帧更新控制器.获取实例.添加帧更新事件(刷新数据);
    }

    public void 更新键位设置(键位配置 配置)
    {
        this.配置 = 配置;
        按键事件.获取实例.清空事件中心();
    }

    private void 刷新数据()
    {
        foreach (var item in 配置.键位设置)
        {
            if (Input.GetKey(item.键))
            {
                按键事件.获取实例.事件触发(item.名称, item.返回值);
            }
        }
    }
}
[System.Serializable]
public class 键位
{
    public string 名称;
    public KeyCode 键;
    public KeyCode 默认键;
    public float 返回值 = 1;
}
 
public class 按键事件 : 事件中心
{

}